#
# Copyright (c) 2015 Intel Corporation
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

import os
import ctypes

subprojects_home = '..'
subprojects = [
               'common',
               'rtit-parser',
               'ipt-parser',
               'ipt-model',
               'sideband-parser',
               'disassembler',
               'model',
               'intermediate',
               'stp-parser'
              ]

byteness_to_bitness = { 4 : 'x86', 8 : 'x86_64' }
bitness = byteness_to_bitness[ctypes.sizeof(ctypes.c_void_p)]

srcdirs = { x : os.path.abspath(os.path.join(subprojects_home, x))
            for x in subprojects }
libdirs = { x : os.path.abspath(os.path.join('build', bitness, x))
            for x in subprojects }
installdir = os.path.abspath(os.path.join('bin', bitness))

flags = ARGUMENTS.get('flags', '-O3') + ' '
env = Environment(CCFLAGS   = flags + '-std=c++0x -Wall',
                  LINKFLAGS = flags + '')

for dir in subprojects:
    SConscript(os.path.join(srcdirs[dir], 'SConscript'),
               variant_dir = libdirs[dir],
               duplicate   = 0,
               exports     = ['env', 'srcdirs', 'libdirs', 'installdir'])

env = Environment(TARFLAGS = '-c -z', TARSUFFIX = '.tgz')
env.Tar('sat-post-processor-binaries', 'bin')
